import { defineStore } from 'pinia'
import axios from "axios"
import { v4 as uuidv4 } from 'uuid';
import { ref } from 'vue'
export const useLoveTalkStore = defineStore('LoveTalk', ()=>{
    const loveTalk = ref(JSON.parse((localStorage.getItem('loveTalk')) || '[]'))
    async function getTalk() {
             await axios.get("https://api.uomg.com/api/rand.qinghua?format=json").then(res => {
            // 将获取到的情话内容封装为对象放入数组中
            // console.log(res.data.content);
            //从res中将data中的content解构出来并改名为talkContent
            let {data:{content:talkContent}} = res
            let obj = { id: uuidv4(), content:talkContent }
            // let obj = { id: uuidv4(), res.data.content }
            loveTalk.value.unshift(obj) // 添加到数组的开头
            })
        }
     return { loveTalk, getTalk }
})


// const useLoveTalkStore = defineStore('LoveTalk', { 
//     state: () => {
//         return {
//             // 存储聊天记录,如果是数组，则直接返回，否则（为null时）返回一个空数组
//             //如果不加null判断，会导致调用this.loveTalk.unshift(obj)时，为null.unshift()会报错
//             //反序列化，将字符串转为对象
//             loveTalk: JSON.parse((localStorage.getItem('loveTalk')) || '[]')
//         }
//     },
//     actions: {
//         //传入的参数是对象类型
//         async getTalk() {
//              await axios.get("https://api.uomg.com/api/rand.qinghua?format=json").then(res => {
//             // 将获取到的情话内容封装为对象放入数组中
//             // console.log(res.data.content);
//             //从res中将data中的content解构出来并改名为talkContent
//             let {data:{content:talkContent}} = res
//             let obj = { id: uuidv4(), content:talkContent }
//             // let obj = { id: uuidv4(), res.data.content }
//             this.loveTalk.unshift(obj) // 添加到数组的开头
//             })
//         }
//     }
// })

// export default useLoveTalkStore;